//
//  FZJSExportObject.h
//  EnglishTalk
//
//  Created by 周咏 on 15/11/19.
//  Copyright © 2015年 Feizhu Tech. All rights reserved.
//  js回调native的对象
//

#import <Foundation/Foundation.h>
#import <JavaScriptCore/JavaScriptCore.h>

@protocol FZJSExportObjectDelegate <NSObject>

@required
-(id)initControllerWithParameters:(NSDictionary*)parameters;

@end

@protocol FZJSExportDelegate <JSExport>

/*
 * js调用natvie的方法
 *params: jsonObject-js回传给native的数据对象(json形式:{"action":1,"actionName":"doBack", params:{"params1":1,"params2":2}})
 *        action:事件类型(1:需要调用方法,2:需要跳转controller).  actionName:事件对应的名称(方法名称/controller名称)   params为参数列表
 */
-(void)jsCallback:(NSString*)jsonObject;

-(void)test;

@end

/**
 *  js回调 需要相关的webViewController实现
 */
@protocol FZJSExportCallBackDelegate <NSObject>

-(void)jsCallback:(NSInteger)action params:(NSDictionary*)params;

@end

@interface FZJSExportObject : NSObject<FZJSExportDelegate>

@property(weak, nonatomic)id<FZJSExportCallBackDelegate> callBackDelegate;

@end
